﻿using System;
using ClassBuilder;
using ClassBuilder.Comment;

namespace ClassBuilder_Tests
{
    class Program
    {
        static void Main(string[] args)
        {
            TestCmt();

            TestCSEnum();




        }

        static void TestCSEnum()
        {
            CSEnum csEnum = new CSEnum("MyColor", "Test", new CSComment("颜色说明"));
            csEnum.AddMember("red", "红色刺眼睛");
            csEnum.AddMember("yellow", "黄色");
            csEnum.AddMember("white", "白色月光");

            var val = csEnum.Value;

        }





    static void TestCmt()
        {
            var code = @"class TestClass
{
     static int Main()
     {
         return GetZero();
     }
 }";

            CSComment coment = new CSComment("You may have some primary information about this class.\r\nYou may have some primary information about this class.\r\nYou may have some primary information about this class.");
            coment.RemarksContent = "You may have some additional information about this class.";

            coment.Exp = new Example(code, "This sample shows how to call the <see cref=\"GetZero\"/> method.");

            coment.Items = new ListItems("item1....", "item2....", "item3....");

            var val = coment.Value;

            var val2 = coment.ByTabs(3);
        }

        /// <summary>
        /// You may have some primary information about this class.
        /// <para>
        /// You may have some primary information about this class.
        /// </para>
        /// <para>
        /// You may have some primary information about this class.
        /// </para>
        /// <list type="bullet">
        /// <item>
        /// <description>item1....</description>
        /// </item>
        /// <item>
        /// <description>item2....</description>
        /// </item>
        /// <item>
        /// <description>item3....</description>
        /// </item>
        /// </list>
        /// </summary>
        /// <example>
        /// This sample shows how to call the <see cref="GetZero"/> method.
        /// <code>
        /// class TestClass
        /// {
        ///      static int Main()
        ///      {
        ///          return GetZero();
        ///      }
        ///  }
        /// </code>
        /// </example>
        /// <remarks>
        /// You may have some additional information about this class.
        /// </remarks>
        public void Test()
        {

        }
    }
}



namespace Test
{
    /// <summary>
    /// 颜色说明
    /// <list type="bullet">
    /// <item><description>red 红色刺眼睛</description></item>
    /// <item><description>yellow 黄色</description></item>
    /// <item><description>white 白色月光</description></item>
    /// </list>
    /// </summary>
    public enum MyColor
    {
        /// <summary>
        /// 红色刺眼睛
        /// </summary>
        red,

        /// <summary>
        /// 黄色
        /// </summary>
        yellow,

        /// <summary>
        /// 白色月光
        /// </summary>
        white
    }
}
namespace WUDI.ECharts
{
    /// <summary>
    /// 坐标轴类型。
    /// <list type="bullet">
    /// <item><description>value 数值轴，适用于连续数据。</description></item>
    /// <item><description>category 类目轴，适用于离散的类目数据。为该类型时类目数据可自动从series.data或dataset.source中取，或者可通过angleAxis.data设置类目数据。</description></item>
    /// <item><description>time 时间轴，适用于连续的时序数据，与数值轴相比时间轴带有时间的格式化，在刻度计算上也有所不同，例如会根据跨度的范围来决定使用月，星期，日还是小时范围的刻度。</description></item>
    /// <item><description>log 对数轴。适用于对数数据。</description></item>
    /// </list>
    /// </summary>
    public enum AngleAxisType
    {
        /// <summary>
        /// 数值轴，适用于连续数据。
        /// </summary>
        value,

        /// <summary>
        /// 类目轴，适用于离散的类目数据。为该类型时类目数据可自动从series.data或dataset.source中取，或者可通过angleAxis.data设置类目数据。
        /// </summary>
        category,

        /// <summary>
        /// 时间轴，适用于连续的时序数据，与数值轴相比时间轴带有时间的格式化，在刻度计算上也有所不同，例如会根据跨度的范围来决定使用月，星期，日还是小时范围的刻度。
        /// </summary>
        time,

        /// <summary>
        /// 对数轴。适用于对数数据。
        /// </summary>
        log
    }
}

